package com.study.kt._03coroutines

import kotlinx.coroutines.*
import kotlin.concurrent.thread

/**
 * 协程是更加轻量级的，程序创建线程数是有数量的
 */
fun main() {
    // useCoroutine()
    //useThread()
    CoroutineScope(Dispatchers.IO).launch {
        delay(1000)
        println("io")
    }

    println("hello")
}

fun useCoroutine() {
    runBlocking {
        repeat(1000) {
            launch {
                delay(1000)
                println("A")
            }
        }
        println("useCoroutine")
    }
}

fun useThread() {
    // 当线程达到一定数量级就会异常
    repeat(100000) {
        thread {
            Thread.sleep(1000)
            println("A")
        }
    }
    println("useThread")
}